/**
 * 存储键盘按键状态的对象，键为按键码，值为布尔值表示是否按下。
 */
let DOWN = {};
/**
 * 键盘按下事件处理函数，更新按键状态。
 * @param {KeyboardEvent} e - 键盘事件对象。
 */
onkeydown = e => DOWN[e.keyCode] = true;
/**
 * 键盘释放事件处理函数，更新按键状态。
 * @param {KeyboardEvent} e - 键盘事件对象。
 */
onkeyup = e => DOWN[e.keyCode] = false;

// 当窗口失去焦点时重置输入状态
/**
 * 窗口失去或获得焦点时的事件处理函数，重置输入状态。
 */
onblur = onfocus = () => {
    DOWN = {};
    MOUSE_RIGHT_DOWN = MOUSE_DOWN = false;
};
